import Vue from 'vue'

import 'normalize.css/normalize.css' // 导入将所有的基础的样式进行统一的库 --- normalize.css

// 全局引入ElementUI组件及样式文件
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
// 多语言设置
// import locale from 'element-ui/lib/locale/lang/en'
import locale from 'element-ui/lib/locale/lang/zh-CN'
import '@/styles/index.scss' //

import App from './App'
import store from './store'
import router from './router'

// 导入语言适配
import i18n from '@/lang'
import '@/icons' // icon
import '@/permission' // permission control
import globalConponent from '@/components'
Vue.use(globalConponent)
// set ElementUI lang to EN
Vue.use(ElementUI, { locale })
// 如果想要中文版 element-ui，按如下方式声明
// Vue.use(ElementUI)

// 使用钩子函数inserted定义自定义指令,当绑定额外元素到父元素上面的时候就会执行这个函数 eg:如下
// Vue.directive('focus', {
//   inserted(el, val) {
//     console.log(el, val)
//   }
// })
Vue.directive('promission', {
  inserted(el, val) {
    console.log(123, store.state.user.userInfo?.roles?.points)
    console.log('指令使用的时候传递过来的参数', val.value)
    const points = store.state.user.userInfo?.roles?.points
    if (!points.includes(val.value)) {
      el.parentNode.removeChild(el)
    }
  }
})
Vue.config.productionTip = false

new Vue({
  el: '#app',
  router,
  store,
  i18n,
  render: h => h(App)
})
